草庐IT

c++ - numeric_limits 的问题

全部标签

c++ - fopen 和 Windows 控制台的问题

我遇到了一个非常奇怪的问题。我在Windows7x64上使用VisualStudio2010Ultimate。我有这个简单的代码:#includeintmain(){fclose(fopen("hakuna","w"));return0;}编译时效果很好。当我转到调试文件夹并双击exe时,它​​会创建文件。但是当我打开控制台并输入exe的目标并按“Enter”时,没有任何反应。如果有一些prinf-s它们会出现,但永远不会创建文件。如果有人能够帮助我,我将不胜感激。我真的不知道为什么会这样 最佳答案 它是在您的默认目录中创建的-或者

c++ - 关于 NTFS Change Journal USN 记录的问题

这可能是一个有点愚蠢的问题,但我一直无法在任何地方找到答案。有没有办法找出更改日志中的最后一条记录是什么?当我们第一次运行FSTCL查询时,枚举所有记录花费的时间太长。有没有简单的方法可以找到它? 最佳答案 FSCTL_QUERY_USN_JOURNAL返回将用于下一条记录的USN(NextUsn)。最后一条记录通常是NextUsn负1。为了安全起见,您可以使用FSCTL_ENUM_USN_DATA和USN过滤来查找NextUsn负1,如果它不存在,则查找NextUsn负2,然后是负4,等等。

c - 绘画后 WM_PAINT 不显示

所以我正在绘制位图,这是我的代码:hdcMem=CreateCompatibleDC(hdc);SelectObject(hdcMem,g_hBitmap);GetObject(g_hBitmap,sizeof(bm),&bm);BitBlt(hdc,196-(bm.bmWidth/2),90,bm.bmWidth,bm.bmHeight,hdcMem,0,0,SRCCOPY);DeleteDC(hdcMem);有时,当我用这段代码绘制时,位图不显示。尽管如果我最小化/取消最小化窗口,则会显示位图。我很确定我的代码没有问题,那么我还应该做些什么吗?编辑:原来它不仅仅是位图,如果我用Te

调用 free 导致程序抛出异常

当我偶然发现以下问题时,我正在做作业。我应该使用C和WindowsAPI函数创建一个简单的多线程应用程序。每个线程都会运行一个简单的任务,所以我决定回收一些我做过的旧东西。我有一个头文件:http://pastebin.com/1aJFAwBg还有一个源文件:http://pastebin.com/L127FGhG然后在main中,我进行以下调用:LoadPoem();ProcessPoem();SavePoem();LoadPoem打开包含原始文件的文件,为输入分配一个缓冲区(变量loadedPoemBuffer)并将文件中的文本存储在其中。ProcessPoem然后为更改后的版本(

c - 从 dll 导出函数指针

我在一个dll文件中有一个函数指针(在实现中,而不是头文件中)。在exe源码中如何调用this指针指向的函数? 最佳答案 您可以导出返回指针的函数。header:typedefvoid(*MyPtr)();__declspec(dllexport)MyPtrGetMyPtr();来源:MyPtrGetMyPtr(){//retunrthefunctionpointerhere} 关于c-从dll导出函数指针,我们在StackOverflow上找到一个类似的问题:

c++ - 尝试从某个 COM 端口读取/写入时程序无法执行

我正在通过串行端口与宽带卡通信。我必须通过COM5读取GPS数据,并通过执行命令并读取COM3上的响应来获取信号强度。每当我尝试读取/写入COM3时,程序都无法执行。当我注释掉包含以下内容的行时:if(!WriteFile(hSerial2,wzBuff,7,&dZBytesRead,NULL))std::cout程序运行完美。完整代码如下:#include#include#include#include#include#includeusingnamespacestd;vectorfindLocation(stringstr,charcharacter);intmain(){time

c - Arduino 和 Windows 串行通信问题?

我正在从事一个项目,该项目涉及在连接到ArduinoMega设备的Windows732位平台上的VisualStudio2010Proffesional中实现的一些“c”串行通信(以控制一些硬件**与问题无关)。此代码100%有效;我遇到的唯一问题是我的串行通信发生了一些非常有趣的事情。VisualC程序如下。HANDLEhDevice=CreateFile(L"COM5",GENERIC_READ|GENERIC_WRITE,FILE_SHARE_READ|FILE_SHARE_WRITE,NULL,OPEN_EXISTING,0,0);//OpenCOMhandle(createf

在 Windows 上的 NetBeans 中从 C 项目创建 EXE 输出?

我是NetBeans新手。我在PC上使用NB。我刚刚清理并构建了一个项目,输出是:CLEANSUCCESSFUL(totaltime:1s)make:Nothingtobedonefor`all'.BUILDSUCCESSFUL(totaltime:1s)现在我似乎找不到任何可执行文件。如何设置IDE以创建从项目输出的EXE文件?更新-请阅读下面我的评论。 最佳答案 构建后,可执行文件应该位于类似PROJECT/dist/PLATFORM/project.exe的路径中(dist或build记不清了)

c - 我怎样才能在 C 中获得一个进程句柄而不是它的名字?

我正在WindowsXP上编写程序,试图获取calc.exe的进程句柄。我可以假设用户确实运行了calc.exe,但他可能更改了文件名。即使名称已更改,是否有一个名称可以获取calc.exe进程的句柄?我找到了这个答案,但它不处理顽皮用户更改名称(例如更改为calc_new.exe)的情况:HowcanIgetaprocesshandlebyitsnameinC++?我可以使用Win32进程的一些其他属性来查找句柄吗? 最佳答案 您可以使用以下Win32API调用序列执行此操作:使用Spy++或类似工具找到您定位的顶级窗口的类名。调

ruby - 在 ruby​​ 中使用 GetDIBits 函数时遇到问题

我有下面的Ruby代码,我正在使用WindowsAPI调用,我应该能够使用函数GetDIBits从我创建的位图中检索RGB值数组,用于AI处理。我需要为GetDIBits函数提供一个BITMAPINFO结构以及一些其他变量。我应该可以接受其他变量,但是如何在ruby​​中创建一个可用于该函数的结构(使用WindowsAPI)?请看下面的代码如果您能完成GetDIBits函数以便我可以检索一组RGB值,我将不胜感激。谢谢马丁defgetscreen()width=Win32API.new("User32.dll","GetSystemMetrics",["L"],"L").call(0)